# debuglog(section)
很有用的调试方法。可以通过 util.debuglog(name) 来创建一个调试fn,这个fn的特点是,只有在运行程序时候,声明环境变量NODE_DEBUG=name,才会打印出调试信息。
可以看下面的例子,直接运行 node debuglog.js,没有任何输出。需要NODE_DEBUG=foo,才会有打印信息.
var util = require('util');
var logger = util.debuglog('foo');
logger('hello');
@前端进阶之旅: 代码已经复制到剪贴板
如下所示,注意,6347 是当前进程id。
➜ 2016.12.02-util git:(master) ✗ NODE_DEBUG=foo node debuglog.js
FOO 6347: hello world
@前端进阶之旅: 代码已经复制到剪贴板
此外,还可以一次指定多个name,通过逗号分隔。
var util = require('util');
var firstLogger = util.debuglog('first');
var secondLogger = util.debuglog('second');
var thirdLogger = util.debuglog('third');
firstLogger('hello');
secondLogger('hello');
thirdLogger('hello');
@前端进阶之旅: 代码已经复制到剪贴板
运行如下:
FOO 6347: hello world
➜ 2016.12.02-util git:(master) ✗ NODE_DEBUG=first,second node debuglog.js
FIRST 6456: hello
SECOND 6456: hello
@前端进阶之旅: 代码已经复制到剪贴板
# 将方法标识为作废:util.deprecate(fn, str)
将fn包裹一层,并返回一个新的函数fn2。调用fn2时,同样完成fn原有的功能,但同时会打印出错误日志,提示方法已作废,具体的提示信息就是第二个参数str。
var util = require('util');
